package jdbc_batch;

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.SQLException;
import java.util.Scanner;

public class Main {
    public static void main(String[] args) throws ClassNotFoundException {
        //jdbc 默认自动能识别 mysql 数据库的驱动类，而其他的数据库驱动类需要手动指定
        String Class_Name = "org.sqlite.JDBC";
        //数据库链接地址
        String JDBC_URL = "jdbc:sqlite:C:/Users/lx/test.db";
        //String JDBC_USER = "root";
        //String JDBC_PASSWORD = "root";

        Class.forName(Class_Name);
        // try 后面 （） 中的对象，会在 try 结构执行结束后，自动释放内存
        // Connection 为数据库连接对象，管理数据库的连接的打开、关闭
        // DriverManager 类自动加载数据库驱动（在 pom.xml 文件中，不同数据库用不同驱动）
        // 根据我们提供数据库信息，创建数据库的连接对象

        //

        long startTime = System.currentTimeMillis();
        try (Connection conn = DriverManager.getConnection(JDBC_URL)) {

            /*
            // 通过连接对象创建执行对象 Statement 类对象 stmt
            try (Statement stmt = conn.createStatement()) {
                // 执行数据库操作，并将查到的数据存入内存的数据集对象中
                // 数据集 ResultSet 类 对象，可以理解为是内存中的虚拟数据库
                int i= stmt.executeUpdate("insert into student(id,name,age,gender) values (1,'小白',13,'女')");

                if(i>0)
                {
                    System.out.println("插入"+i+"行数据成功！");
                }

            }*/
            /*
            String sql = "insert into student(id,name,age,gender) values (?,?,?,?)";

            try (PreparedStatement ps = conn.prepareStatement(sql)) {

                ps.setObject(1,id);
                ps.setObject(2,name);
                ps.setObject(3,age);
                ps.setObject(4,gender);
                int i = ps.executeUpdate();
                if(i>0)
                {
                    System.out.println("插入"+i+"行数据成功！");
                }
            }*/
        } catch (SQLException throwables) {
            throwables.printStackTrace();
        }
        long endTime = System.currentTimeMillis();
        System.out.println("程序运行时间：" + (endTime - startTime) + "ms");    //输出程序运行时间
    }
}
